﻿//Do usercontrol được import từ YKhoa_Controls nên trước mỗi id của các element trong usercontrol phải gán thêm id của usercontrol trước nó
//VD: [userControlID]_[elementID]
$(document).ready(function () {
    var icons = {
        header: "ui-icon-circle-arrow-e",
        activeHeader: "ui-icon-circle-arrow-s"
    };

    $('#acorditionPhanLoaiKhoa').accordion({
        heightStyle: "content",
        collapsible: true,
        icons: icons
    });

    $('.item-nhom-pl').click(function () {
        var maKhoa = $(this).attr('id');
        $('#YKCT-CD-txtGoTatChuyenKhoa').val(maKhoa);
        $('#YKCT-CD-dropDownChuyenKhoa').val(maKhoa);
        loadChiTietNhomTrongKhoa(maKhoa);
    });

    $('#YKCT-CD-dropDownChuyenKhoa').change(function () {
        loadChiTietDichVuTrongNhom($(this).val(), '');
        $('#YKCT-CD-txtGoTatChuyenKhoa').val($(this).val());
    });

    $('#YKCT-CD-txtGoTatChuyenKhoa').keyup(function () {
        $('#YKCT-CD-dropDownChuyenKhoa').val($(this).val());
        loadChiTietDichVuTrongNhom($(this).val(), '');
    });
   
    $('#YKCT-CD-dropDownGoiChiDinh').change(function () {
        $('#YKCT-CD-tablePhieuChiDinh tbody').empty();
        if ($(this).val() == '') {
            $('#pcd-tongthanhtien').closest('tr').remove(); //Nếu không chọn gói khám thì remove ô tính tổng tiền            
        }
        else
            loadChiTietGoiKham($(this).val());
    });

    $('#TKCT-CD-SaveGoiChiDinh').click(function () {
        if ($('#YKCT-CD-tablePhieuChiDinh tbody td input[type=hidden]').length <= 0) {
            $('#YKCT-CD-DescriptionLuuChiDinh').html('*Chưa có dịch vụ nào được chọn');
        }
        else
        {
            $(this).attr('disabled', 'disabled');
            $('#YKCT-CD-SpanTenGoiChiDinh').css('display', 'block');
            $('#YKCT-CD-DescriptionLuuChiDinh').html('*Đặt tên cho gói chỉ định');
            $('#YKCT-CD-txtTenGoiChiDinh').focus();
        }
       
    }); //Mở form điền tên gói chỉ định

    $('#YKCT-CD-btnSaveTenGoiChiDinh').click(function () { 
        var TenGoiChiDinh = $('#YKCT-CD-txtTenGoiChiDinh').val();
        if (TenGoiChiDinh == '') {
            $('#YKCT-CD-DescriptionLuuChiDinh').html('*Chưa nhập tên gói chỉ định');
            $('#YKCT-CD-txtTenGoiChiDinh').focus();
        }
        else {
            $('#YKCT-CD-lblThongBao').html('*Lưu phiếu chỉ định này để sử dụng cho lần sau');
            //Lấy danh sách chỉ định
            var MaDV = "";
            var TenDV = "";
            var subid = "";
            $('#YKCT-CD-tablePhieuChiDinh tbody td input[type=hidden]').each(function () {
                MaDV += $(this).val() + '|';
                subid = $(this).attr('id').replace('pcd-hdf-madv-', '');
                TenDV += $('#pcd-tendv-' + subid).val() + '|';
            });
            $.ajax({
                url: 'Handler/ChiDinh/XML_GoiKham.ashx',
                data: { MaDV: MaDV, TenDV: TenDV, TenGoiCD: TenGoiChiDinh, ActionType: 'SaveCTGK' },
                contentType: 'text/xml; charset=utf-8',
                type: 'get',
                success: function (xmlResponse) {
                    //display message
                    var message = xmlResponse.getElementsByTagName('Message');
                    alert($(message).attr('Text'));
                    closeSaveTenGoiChiDinh();
                },
                error: function (err) {
                    alert(err);
                }
            });
        }
    }); //Lưu gói chỉ định về CSDL

    $('#YKCT-CD-btnCloseTenGoiChiDinh').click(function () {
        closeSaveTenGoiChiDinh();
    });

    $('#YKCT-CD-btnLuuPhieuChiDinh').click(function () {
        var MaDV = "";
        var TenDV = "";
        var MaKhoa = "";
        var SoLuong = 0;
        var DonGia = 0;
        var ThanhTien = 0;
        var TongTien = 0;
        var BaoHiemChi = 0;
        if ($('#pcd-hdf-tongthanhtien').length > 0)
            TongTien = $('#pcd-hdf-tongthanhtien').val();
        if ($('#pcd-hdf-tongbaohiemchi').length > 0)
            BaoHiemChi = $('#pcd-hdf-tongbaohiemchi').val();
        var GhiChu = "";
        var NoiThucHien = "";
        var subid = "";
        var MaBN = $('#YKCT-CD-txtMaBN').val();
        var MaDotKham = $('#YKCT-CD-hdfMaDotKham').val();
        var MaPhieu = $('#YKCT-CD-txtMaPhieu').val();
        var MaPhieuKham = $('#YKCT-CD-hdfMaPhieuKham').val();
        var DoiTuong = $('#YKCT-CD-lblDoiTuong').html();
        var BSChiDinh = $('#YKCT-CD-txtBSChiDinh').val();
        var NoiChiDinh = $('#YKCT-CD-txtNoiChiDinh').val();
        var MaNoiChiDinh = $('#YKCT-CD-hdfMaNoiChiDinh').val();
        var UuTien = $('#YKCT-CD-TKCT-CD-chkCapCuu').is(':checked');
        //lấy danh sách dịch vụ chỉ định
        $('#YKCT-CD-tablePhieuChiDinh tbody td input[type=hidden][class=pcd-hdf-madv]').each(function () {
            MaDV += $(this).val() + '|';
            subid = $(this).attr('id').replace('pcd-hdf-madv-', '');
            TenDV += $('#pcd-tendv-' + subid).val() + '|';
            SoLuong += $('#pcd-soluong-' + subid).val() + '|';
            DonGia += $('#pcd-dongia-' + subid).val() + '|';
            ThanhTien += $('#pcd-thanhtien-' + subid).val() + '|';            
            BaoHiemChi += $('#pcd-baohiemchi-' + subid).val() + '|';
            if ($('#pcd-ghichu-' + subid).val() == '')
                GhiChu += '-' + '|';
            else
                GhiChu += $('#pcd-ghichu-' + subid).val() + '|';
            NoiThucHien += $('#pcd-noithuchien-' + subid).val() + '|';
            MaKhoa += $('#pcd-hdf-makhoa-' + subid).val() + '|';
        });

        $.ajax({
            url: 'Handler/ChiDinh/XML_LuuPhieuChiDinh.ashx',
            type: 'get',
            data: {
                MaBN: MaBN,
                MaDotKham: MaDotKham,
                MaPhieu: MaPhieu,
                MaPhieuKham: MaPhieuKham,
                DoiTuong: DoiTuong,
                BSChiDinh: BSChiDinh,
                NoiChiDinh: NoiChiDinh,
                MaNoiChiDinh: MaNoiChiDinh,
                MaKhoa:MaKhoa,
                MaDV: MaDV,
                TenDV: TenDV,
                SoLuong: SoLuong,
                DonGia: DonGia,
                ThanhTien: ThanhTien,
                TongTien: TongTien,
                BaoHiemChi: BaoHiemChi,
                GhiChu: GhiChu,
                NoiThucHien: NoiThucHien,
                UuTien: UuTien
            },
            contentType: 'text/xml; charset=utf-8',
            success: function (xmlResponse) {
                var message = xmlResponse.getElementsByTagName('Message');
                alert($(message).attr('Text'));
            }
        });
    }); //Lưu phiếu chỉ định về CSDL
})

function clear()
{
    $('#divBangDichVu').empty();
    $('#divGridDichVu').remove();
    $('.positionable').remove();
}

function loadData(_maKhoa, _tenDV, _maBN, _hoTen, _ngaySinh, _tuoi, _gioiTinh, _bsChiDinh, _noiChiDinh, _soBHYT, _hanBHYT, _doiTuong, _maDotKham, _maPK)
{
    clear();
    var currentDate = new Date();
    $('#YKCT-CD-txtMaBN').val(_maBN);
    $('#YKCT-CD-lblHoTen').html(_hoTen);
    $('#YKCT-CD-lblTuoi').html(_tuoi);
    $('#YKCT-CD-lblNgaySinh').html(_ngaySinh);
    $('#YKCT-CD-lblGioiTinh').html(_gioiTinh);
    $('#YKCT-CD-txtBSChiDinh').val(_bsChiDinh);
    $('#YKCT-CD-txtTenDichVu').val(_tenDV);
    $('#YKCT-CD-txtNgayChiDinh').val(currentDate.getDate() + '/' + (currentDate.getMonth() + 1) + '/' + currentDate.getFullYear());
    $('#YKCT-CD-txtNoiChiDinh').val(_noiChiDinh);
    $('#YKCT-CD-lblSoBHYT').html(_soBHYT);
    $('#YKCT-CD-lblHanBH').html(_hanBHYT);
    $('#YKCT-CD-lblDoiTuong').html(_doiTuong);
    $('#YKCT-CD-hdfMaDotKham').val(_maDotKham);
    $('#YKCT-CD-hdfMaPhieuKham').val(_maPK);
    $('#YKCT-CD-hdfMaNoiChiDinh').val(_maKhoa);
}

function loadChiTietNhomTrongKhoa(maKhoa)
{   
    $('#divBangDichVu').empty();
    $('.ct-nhom-in-khoa').remove();
    var divExpand = 'divExpand_' + maKhoa;    
    var i = 0;    
    var extendDiv = "<div class='ct-nhom-in-khoa'>";
    $.get('Handler/XML_LoadChiTietDichVu.ashx', { MaKhoa: maKhoa, typeLoad: 'CTNhom' }).done(function (xmlResponse) {
        $('NhomDichVu', xmlResponse).map(function (index) {
            extendDiv += "<a class='ct-dv-nhom' href=\"javascript: loadChiTietDichVuTrongNhom('"+ maKhoa +"', '" + $(this).attr('MaNhom') + "')\">   " + $(this).attr('TenNhom') + "</a><br />";
        });
        extendDiv += "</div>";
        $('#' + divExpand).append(extendDiv);
        //$(".positionable").position({
        //    of: $("#" + divExpand),
        //    my: 'left' + " " + 'top',
        //    at: 'left' + " " + 'top',
        //    collision: 'flipfit' + " " + 'flipfit'
        //});
    });
}

function loadChiTietDichVuTrongNhom(maKhoa, maNhom) {
    $('#divBangDichVu').empty();
    var gridDichVu = "<div id='divGridDichVu'><table><tr>";
    var i = 0;
    $.get('Handler/XML_LoadChiTietDichVu.ashx', { MaKhoa: maKhoa, MaNhom: maNhom, typeLoad: 'CTDVu' }).done(function (xmlResponse) {
        var checkAlreadyDV = false;
        var checkBox = "";
        var MaDV = "";
        var DonGia = "";
        $('DichVu', xmlResponse).map(function (index) {
            i = index + 1; //index bắt đầu từ 0           
            MaDV = $(this).attr('MaDV');
            $('#YKCT-CD-tablePhieuChiDinh tbody td input[type=hidden][class=pcd-hdf-madv]').each(function () {
                if ($(this).val() == MaDV) {                    
                    checkAlreadyDV = true;
                    return false;
                }
            });
            if (checkAlreadyDV)  //kiểm tra dịch vụ trong phiếu chỉ định, nếu có thì check vô trong checkbox luôn
            {
                checkBox = "<input type='checkbox' checked='checked' class='chk-ct-dich-vu' id='chk-ct-dichvu_" + index + "' value='" + MaDV + "' onclick='addDichVuVaoPhieuChiDinh(this.id);'/> " + $(this).attr('TenDichVu');
                checkAlreadyDV = false;
            }
            else
                checkBox = "<input type='checkbox' class='chk-ct-dich-vu' id='chk-ct-dichvu_" + index + "' value='" + MaDV + "' onclick='addDichVuVaoPhieuChiDinh(this.id);'/> " + $(this).attr('TenDichVu');
            DonGia = "<input type='hidden' value='" + $(this).attr('DonGia') + "' id='DonGia_DichVu_" + MaDV + "' />";
            
            if (i % 3 == 0) {
                gridDichVu += "<td>" + checkBox + DonGia + "</td></tr><tr>";
            }
            else {
                gridDichVu += "<td>" + checkBox + DonGia + "</td>";
            }
        });
        gridDichVu += "</tr></table></div>";
        $('#YKCT-CD-hdfMaKhoaDangChon').val(maKhoa);
        $('#divBangDichVu').append(gridDichVu);
    });
}

function loadChiTietGoiKham(maGK)
{    
    $.get('Handler/ChiDinh/XML_GoiKham.ashx', { MaGK: maGK, ActionType: 'LoadCTGK' }).done(function (xmlResponse) {        
        var soLuong = 1;
        var donGia = 0;
        var thanhTien = 0;
        var maKhoa = "";
        $('.chk-ct-dich-vu').removeAttr('checked');
        $('ChiTietGoiKham', xmlResponse).each(function (index) {            
            donGia = $(this).attr('DonGia');
            maKhoa = $(this).attr('MaKhoa');
            thanhTien = donGia * soLuong;
            //insert vào bảng phiếu chỉ định
            insertRowToPhieuChiDinh('chk-ct-dichvu_' + index, $(this).attr('MaDV'), $(this).attr('TenDichVu'), donGia, thanhTien, 0, '', '', maKhoa);
            $('#chk-ct-dichvu_' + index).attr('checked', 'checked');
        });        
        tinhTongTienPhieuChiDinh();
    });  
}

function deleteDichVuTrongPhieuChiDinh(idbtnXoa)
{
    $('#' + idbtnXoa).closest('tr').remove();
    var idChk = idbtnXoa.replace('pcd-btn-xoa-', '');
    $('#' + idChk).removeAttr('checked');
    tinhTongTienPhieuChiDinh();   
}

function insertRowToPhieuChiDinh(id, maDV, tenDV, donGia, thanhTien, baohiemchi, noithuchien, ghichu, maKhoa)
{
    var tbody = "<tr>";
    tbody +=" <td><input type='hidden' id='pcd-hdf-madv-" + id + "' class='pcd-hdf-madv' value='" + maDV + "'/><input type='hidden' id='pcd-hdf-makhoa-" + id + "' value='" + maKhoa + "'/><input type='text' id='pcd-stt-" + id + "' class='pcd-cell-stt' readonly='readonly' style='text-align:center; width:20px;' /></td>" +
    "         <td><input type='text' id='pcd-tendv-" + id + "' style='width:113px;' value='" + tenDV + "' /></td>" +
    "         <td><input type='hidden' id='pcd-soluong-" + id + "' value='1'/>" +
    "         <input type='hidden' id='pcd-dongia-" + id + "' value='" + donGia + "'  class='numeric-style'/>" +
    "         <input type='hidden' id='pcd-thanhtien-" + id + "'  value='" + thanhTien + "'  class='pcd-thanhtien numeric-style' />" +
    "         <input type='hidden' id='pcd-baohiemchi-" + id + "'  value='" + baohiemchi + "' class='pcd-baohiemchi numeric-style'/>" +
    "         <input type='hidden' id='pcd-noithuchien-" + id + "' value='" + noithuchien + "'/>" +
    "         <input type='text' id='pcd-ghichu-" + id + "' style='width:100px;' value='" + ghichu + "'/></td>" + 
    "         <td><input type='button' id='pcd-btn-xoa-" + id + "' onclick='deleteDichVuTrongPhieuChiDinh(this.id);' value='Xóa' /></td>";
    tbody += "</tr>";
    $('#YKCT-CD-tablePhieuChiDinh tbody').append(tbody);
    //tạo ô tính tổng thành tiền
    //kiểm tra xem đã tạo ra hay chưa, nếu có rồi thì thôi
    if ($('#pcd-lbl-tongthanhtien').length <= 0) {
        var htmlTT = "<tr><td colspan='3'><input type='hidden' id='pcd-hdf-tongthanhtien' /><label style='font-weight:bold;'>Tổng tiền: </label><label style='color:red;font-weight:bold;' id='pcd-lbl-tongthanhtien'></label></td></tr> " +
                     "<tr><td colspan='3'><input type='hidden' id='pcd-hdf-tongbaohiemchi' /><label style='font-weight:bold;'>Tổng tiền bảo hiểm chi: <label style='color:red;font-weight:bold;' id='pcd-lbl-tongbaohiemchi'></label></td></tr>";
        $('#YKCT-CD-tablePhieuChiDinh tfoot').append(htmlTT);
    }   
}

function addDichVuVaoPhieuChiDinh(id)
{
    var idCheckBox = '#' + id;    
    var maDV = $(idCheckBox).val();    
    if ($(idCheckBox).is(':checked')) {
        var tenDV = $(idCheckBox)[0].nextSibling.nodeValue;
        var donGia = $('#DonGia_DichVu_' + maDV).val();
        var MaKhoa = $('#YKCT-CD-hdfMaKhoaDangChon').val();
        var soLuong = 1;
        var thanhTien = donGia * soLuong;
        //insert vào bảng phiếu chỉ định
        insertRowToPhieuChiDinh(id, maDV, tenDV, donGia, thanhTien, 0, '', '', MaKhoa);
    }
    else {
        //remove dịch vụ ra khỏi bảng phiếu chỉ định        
        $('#YKCT-CD-tablePhieuChiDinh tbody td input[type=hidden]').each(function () {
            if ($(this).val() == maDV)
            {                
                $(this).closest('tr').remove();
                return false;
            }            
        });
    }   
    tinhTongTienPhieuChiDinh();
}

function tinhTongTienPhieuChiDinh()
{
    orderSTTPhieuChiDinh(); //order lại số thứ tự các dịch vụ trong bảng phiếu chỉ định
    var tongTien = 0;
    var tongbaohiemchi = 0;
    $('.pcd-thanhtien').each(function () {
        if ($(this).val() != '')
            tongTien += parseFloat($(this).val());
    });

    $('.pcd-baohiemchi').each(function () {
        if ($(this).val() != '')
            tongbaohiemchi += parseFloat($(this).val());
    });

    if ($('#pcd-lbl-tongthanhtien').length > 0 && $('#pcd-hdf-tongthanhtien').length > 0)
    {
        $('#pcd-lbl-tongthanhtien').html(formatTienTe(tongTien));
        $('#pcd-hdf-tongthanhtien').val(tongTien);
    }

    if ($('#pcd-lbl-tongbaohiemchi').length > 0 && $('#pcd-hdf-tongbaohiemchi').length > 0)
    {
        $('#pcd-lbl-tongbaohiemchi').html(formatTienTe(tongbaohiemchi));
        $('#pcd-hdf-tongbaohiemchi').val(tongbaohiemchi);
    }
}

function orderSTTPhieuChiDinh()
{
    var i = 0;
    $('.pcd-cell-stt').each(function (index) {
        i = index + 1;
        $(this).val(i);
    })
}

function closeSaveTenGoiChiDinh()
{
    $('#YKCT-CD-SpanTenGoiChiDinh').css('display', 'none');
    $('#YKCT-CD-DescriptionLuuChiDinh').html('*Lưu phiếu chỉ định này để sử dụng cho lần sau');
    $('#YKCT-CD-txtTenGoiChiDinh').val('');
    $('#TKCT-CD-SaveGoiChiDinh').removeAttr('disabled');
}

function formatTienTe(n) {
    var num = n;
    num = num.toString().replace(/\$|\,/g, '');
    if (isNaN(num))
        num = "0";
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num * 100 + 0.50000000001);
    cents = num % 100;
    num = Math.floor(num / 100).toString();
    if (cents < 10)
        cents = "0" + cents;
    for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3) ; i++)
        num = num.substring(0, num.length - (4 * i + 3)) + ',' +
        //num = num.substring(0,num.length-(4*i+3))+'.'+
        num.substring(num.length - (4 * i + 3));
    //return (((sign)?'':'-') + '$' + num + '.' + cents);
    return (((sign) ? '' : '-') + num);//+'đ');
}